-- 测试有符号算术指令
-- 测试：有符号乘 (IMUL)、有符号除 (IDIV)

-- 测试1: 有符号乘法指令（IMUL）
移动 累加器，5        -- AX = 5
移动 基址，3          -- BX = 3
有符号乘 基址         -- DX:AX = AX * BX = 5 * 3 = 15 (有符号结果在 DX:AX)
                    -- 如果结果超过16位，高位在 DX

-- 测试2: 有符号除法指令（IDIV）
移动 累加器，15       -- AX = 15 (被除数)
移动 基址，3          -- BX = 3 (除数)
有符号除 基址         -- AX = AX / BX = 15 / 3 = 5 (商在 AX)
                    -- 余数在 DX

-- 测试3: 负数有符号乘法示例
移动 累加器，-100     -- AX = -100 (0xFF9C)
移动 计数，50         -- CX = 50
有符号乘 计数         -- DX:AX = AX * CX = -100 * 50 = -5000
                    -- 结果：DX = 0xEC78, AX = 0xEC78 (有符号扩展)

-- 测试4: 负数有符号除法示例
移动 数据，0xFFFF     -- DX = -1 (高位，符号扩展)
移动 累加器，-5000    -- AX = -5000 (被除数，0xEC78)
移动 基址，100        -- BX = 100 (除数)
有符号除 基址         -- AX = -5000 / 100 = -50 (商)
                    -- DX = 0 (余数)

-- 测试5: 正数有符号乘法（32位结果）
移动 累加器，1000     -- AX = 1000
移动 计数，200        -- CX = 200
有符号乘 计数         -- DX:AX = 1000 * 200 = 200000
                    -- 结果：DX = 0x0003, AX = 0x0D40

-- 测试6: 所有寄存器测试
移动 累加器，10
有符号乘 累加器       -- IMUL AX

移动 基址，20
有符号乘 基址         -- IMUL BX

移动 计数，30
有符号乘 计数         -- IMUL CX

移动 数据，40
有符号乘 数据         -- IMUL DX

移动 累加器，100
有符号除 累加器       -- IDIV AX

移动 基址，50
有符号除 基址         -- IDIV BX

空操作

